A Package for the Automatic Diierentiation of Algorithms Written in C/c++
نویسندگان
چکیده
The C++ package ADOL-C described here facilitates the evaluation of rst and higher derivatives of vector functions that are deened by computer programs written in C or C++. The resulting derivative evaluation routines may be called from C/C++, Fortran, or any other language that can be linked with C. The numerical values of derivative vectors are obtained free of truncation errors at a small multiple of the run time and randomly accessed memory of the given function evaluation program. Derivative matrices are obtained by columns or rows. For solution curves deened by ordinary diierential equations, special routines are provided that evaluate the Taylor coeecient vectors and their Jacobians with respect to the current state vector. The derivative calculations involve a possibly substantial (but always a priori predictable) amount of data that are accessed strictly sequentially and are therefore automatically paged out to les on external mass storage devices. Abbreviated title: Automatic diierentiation by overloading in C++
منابع مشابه
Automatic Differentiation of a Parallel Molecular Dynamics Application
The ADIC and ADIFOR automatic diierentiation tools have proven useful for obtaining the derivatives needed in many scientiic applications written in Fortran 77 or ANSI C. But many new scientiic programs are written for or ported to parallel platforms to achieve maximal performance. We provide an overview of our approach to the complex task of applying automatic diierentiation techniques to para...
متن کاملTraining Large Neural Networks
We describe regularization tools for training large-scale artiicial feed-forward neural networks. We propose algorithms that explicitly use a sequence of Tikhonov regularized nonlinear least squares problems. For large-scale problems, methods using new special purpose automatic diierentiation are used in a conjugate gradient method for computing a truncated Gauss-Newton search direction. The al...
متن کاملOn Automatic Diierentiation of Codes with Complex Arithmetic with Respect to Real Variables on Automatic Diierentiation of Codes with Complex Arithmetic with Respect to Real Variables
We explore what it means to apply automatic diierentiation with respect to a set of real variables to codes containing complex arithmetic. That is, both dependent and independent variables with respect to diierentiation are real variables, but in order to exploit features of complex mathematics, part of the code is expressed by employing complex arithmetic. We investigate how one can apply auto...
متن کاملAutomatic Diierentiation of Numerical Integration Algorithms
Automatic diierentiation (AD) is a technique for automatically augmenting computer programs with statements for the computation of derivatives. This article discusses the application of automatic diierentiation to numerical integration algorithms for ordinary diierential equations (ODEs), in particular, the ramiications of the fact that AD is applied not only to the solution of such an algorith...
متن کاملOperator Overloading as an Enabling Technology for Automatic Diierentiation
We present an example of the science that is enabled by object-oriented programming techniques. Scientiic computation often needs derivatives for solving nonlinear systems such as those arising in many PDE algorithms, optimization, parameter identiication, stii ordinary diierential equations, or sensitivity analysis. Automatic diierentiation computes derivatives accurately and eeciently by appl...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1993